''' $Id: uucico.8,v 1.20 2002/03/05 22:20:48 ian Rel $
.TH uucico 8 "Taylor UUCP 1.07"
.SH NAME
uucico \- UUCP file transfer daemon
.SH SYNOPSIS
.B uucico
[ options ]
.SH DESCRIPTION
The
.I uucico
daemon processes file transfer requests queued by
.I uucp
(1) and
.I uux
(1).  It is started when
.I uucp
or
.I uux
is run (unless they are given the
.B \-r
option).  It is also typically started periodically using
entries in the
.I crontab
table(s).

When invoked with
.B \-r1,
.B \-\-master,
.B \-s,
.B \-\-system,
or
.B \-S,
the daemon will place a call to a remote system, running in master
mode.  Otherwise the daemon will start in slave mode, accepting a call
from a remote system.  Typically a special login name will be set up
for UUCP which automatically invokes
.I uucico
when a call is made.

When
.I uucico
terminates, it invokes the
.I uuxqt
(8) daemon, unless the
.B \-q
or
.B \-\-nouuxqt
option is given;
.I uuxqt
(8) executes any work orders created by
.I uux
(1) on a remote system, and any work orders created locally which have
received remote files for which they were waiting.

If a call fails,
.I uucico
will normally refuse to retry the
call until a certain (configurable) amount of time
has passed.  This may be overriden by the
.B -f,
.B --force,
or
.B -S
option.

The
.B \-l,
.B \-\-prompt,
.B \-e,
or
.B \-\-loop
options may be used to force
.I uucico
to produce its own prompts of "login: " and "Password:".  When another
daemon calls in, it will see these prompts and log in as usual.  The
login name and password will normally be checked against a separate
list kept specially for
.I uucico
rather than the
.I /etc/passwd
file; it is possible on some systems to direct
.I uucico
to use the
.I /etc/passwd
file.  The
.B \-l
or
.B \--prompt
option will prompt once and then exit; in this mode the UUCP
administrator or the superuser may use the
.B \-u
or
.B \--login
option to force a login name, in which case
.I uucico
will not prompt for one.
The
.B \-e
or
.B \--loop
option will prompt again after the first session is over; in this mode
.I uucico
will permanently control a port.

If
.I uucico
receives a SIGQUIT, SIGTERM or SIGPIPE signal, it will cleanly abort
any current conversation with a remote system and exit.  If it
receives a SIGHUP signal it will abort any current conversation, but
will continue to place calls to (if invoked with
.B \-r1
or
.B \-\-master)
and accept calls from (if invoked with
.B \-e
or
.B \-\-loop)
other systems.  If it receives a
SIGINT signal it will finish the current conversation, but will not
place or accept any more calls.
.SH OPTIONS
The following options may be given to
.I uucico.
.TP 5
.B \-r1, \-\-master
Start in master mode (call out to a system); implied by
.B \-s,
.B \-\-system,
or
.B \-S.
If no system is specified, call any system for which work is waiting
to be done.
.TP 5
.B \-r0, \-\-slave
Start in slave mode.  This is the default.
.TP 5
.B \-s system, \-\-system system
Call the named system.
.TP 5
.B \-S system
Call the named system, ignoring any required wait.  This is equivalent
to
.B \-s system \-f.
.TP 5
.B \-f, \-\-force
Ignore any required wait for any systems to be called.
.TP 5
.B \-l, \-\-prompt
Prompt for login name and password using "login: " and "Password:".
This allows
.I uucico
to be easily run from
.I inetd
(8).  The login name and password are checked against the UUCP
password file, which probably has no connection to the file
.I /etc/passwd.
The
.B \-\-login 
option may be used to force a login name, in which cause
.I uucico
will only prompt for a password.
.TP 5
.B \-p port, \-\-port port
Specify a port to call out on or to listen to.
.TP 5
.B \-e, \-\-loop
Enter endless loop of login/password prompts and slave mode daemon
execution.  The program will not stop by itself; you must use
.I kill
(1) to shut it down.
.TP 5
.B \-w, \-\-wait
After calling out (to a particular system when
.B \-s,
.B \-\-system,
or 
.B \-S
is specifed, or to all systems which have work when just
.B \-r1
or
.B \-\-master
is specifed), begin an endless loop as with
.B \-\-loop.
.TP 5
.B \-q, \-\-nouuxqt
Do not start the
.I uuxqt
(8) daemon when finished.
.TP 5
.B \-c, \-\-quiet
If no calls are permitted at this time, then don't make the call, but
also do not put an error message in the log file and do not update the
system status (as reported by
.I uustat
(1)).  This can be convenient for automated polling scripts, which may
want to simply attempt to call every system rather than worry about
which particular systems may be called at the moment.  This option
also suppresses the log message indicating that there is no work to be
done.
.TP 5
.B \-C, \-\-ifwork
Only call the system named by
.B \-s,
.B \-\-system
or
.B \-S
if there is work for that system.
.TP 5
.B \-D, \-\-nodetach
Do not detach from the controlling terminal.  Normally
.I uucico
detaches from the terminal before each call out to another system and
before invoking
.I uuxqt.
This option prevents this.
.TP 5
.B \-u name, \-\-login name
Set the login name to use instead of that of the invoking user.  This
option may only be used by the UUCP administrator or the superuser.
If used with
.B \-\-prompt,
this will cause
.I uucico
to prompt only for the password, not the login name.
.TP 5
.B \-z, \-\-try-next
If a call fails after the remote system is reached, try the next
alternate rather than simply exiting.
.TP 5
.B \-i type, \-\-stdin type
Set the type of port to use when using standard input.  The only
support port type is TLI, and this is only available on machines which
support the TLI networking interface.  Specifying
.B \-iTLI
causes
.I uucico
to use TLI calls to perform I/O.
.TP 5
.B \-x type, \-X type, \-\-debug type
Turn on particular debugging types.  The following types are
recognized: abnormal, chat, handshake, uucp-proto, proto, port,
config, spooldir, execute, incoming, outgoing.  

Multiple types may be given, separated by commas, and the
.B \-\-debug
option may appear multiple times.  A number may also be given, which
will turn on that many types from the foregoing list; for example,
.B \-\-debug 2
is equivalent to
.B \-\-debug abnormal,chat.

The debugging output is sent to the debugging file, which may be
printed using
.I uulog -D.
.TP 5
.B \-I file, \-\-config file
Set configuration file to use.  This option may not be available,
depending upon how
.I uucico
was compiled.
.TP 5
.B \-v, \-\-version
Report version information and exit.
.TP 5
.B \-\-help
Print a help message and exit.
.SH SEE ALSO
kill(1), uucp(1), uux(1), uustat(1), uuxqt(8)
.SH AUTHOR
Ian Lance Taylor
<ian@airs.com>
